/**
 * 调用函数时触发
 * 
 * 
 * 2.触发拦截操作
 * porxy()
 * porxy.apply(null)
 * porxy.call(null)
 * Reflect.apply(porxy,null,[])
 * 
 */

const myTarget = ()=>{}

const porxy = new Proxy(myTarget,{
    /**
     * 
     * @param {*} target 目标函数
     * @param {*} thisArg 调用this的对象
     * @param  {...any} argumentsList 参数列表
     * @returns 
     */
    apply(target,thisArg,...argumentsList){
        console.log('apply()');
        return Reflect.apply(...arguments)
    }
})


porxy()//apply()
porxy.apply(null);//apply()
porxy.call(null)//apply()
Reflect.apply(porxy,null,[])//apply()

